package com.mida.bms.report.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.mida.tool.common.utils.LongToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <h1>报告书写段落vo</h1>
 * <p>
 *
 * </p>
 *
 * @author jian.li on 2021/4/30 15:30
 */
@Data
public class DocReportParagraphVo implements Serializable {

    // 唯一标识
    private String uuid;

    // 段落slot集合
    private List<DocStructTemplateSlotVo> docParagraphSlotVoList;

    //片段集合
    private List<DocReportFragmentVo> docStructFragmentVoList;

    private  DocStructCssVo docStructCssVo;

    private String noumenonName;//本体名称
    /**
     * 结构化模板段落标识
     */
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    @ApiModelProperty(value = "结构化模板段落标识")
    private Long stParagraphSoid;

    /**
     * 结构化模板基本信息标识
     */
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    @ApiModelProperty(value = "结构化模板基本信息标识")
    private Long stTemplateInfoSoid;

    /**
     * 序号
     */
    @ApiModelProperty(value = "序号")
    private Integer serialNo;

    /**
     * 最后修改人
     */
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    @ApiModelProperty(value = "最后修改人")
    private Long updateUser;

    /**
     * 逻辑删除标识
     */
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    @ApiModelProperty(value = "逻辑删除标识")
    private Long isDelete;

    /**
     * 本体标识
     */
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    @ApiModelProperty(value = "本体标识")
    private Long noumenonSoid;

    /**
     * 最后修改日期
     */
    @ApiModelProperty(value = "最后修改日期")
    private Date updateDate;

    /**
     * 创建日期
     */
    @ApiModelProperty(value = "创建日期")
    private Date createDate;
    /**
     * 可编辑标识
     */
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    @ApiModelProperty(value = "可编辑标识")
    private Long editable;

    @ApiModelProperty(value = "前端固定标识")
    private String  editableTag;

    @ApiModelProperty(value = "段落含义标识")
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    private Long meaningTag;

    @ApiModelProperty(value = "贴图标识")
    @JsonSerialize(using= com.fasterxml.jackson.databind.ser.std.ToStringSerializer.class)
    private Long pictureTag;

    private static final long serialVersionUID = 1L;
}
